import { UPDATE_TODO, DEL_TODO } from "./constands";
import { StateAll } from "../../../redux/state";
const initState = StateAll;
// const initState = {
//   list: [
//     {
//       todoName: "吃饭",
//       isDone: true,
//       id: 1,
//     },
//     {
//       todoName: "睡觉",
//       isDone: false,
//       id: 2,
//     },
//     {
//       todoName: "干活",
//       isDone: true,
//       id: 3,
//     },
//   ],
//   // list: JSON.parse(localStorage.getItem("key")) || [],
// };

export default function reducer(state = initState, action) {
  let newState, id;

  switch (action.type) {
    // 修改状态
    case UPDATE_TODO:
      id = action.id;

      newState = state.list.map((item) => {
        if (item.id === id) {
          item.isDone = !item.isDone;
        }
        return { ...item };
      });
      return {
        ...state,
        list: newState,
      };
    // 删除单个
    case DEL_TODO:
      id = action.id;

      newState = state.list.filter((item) => item.id !== id);

      return {
        ...state,
        list: newState,
      };

    default:
      return state;
  }
}
